pub fn odd_fibnacci_sum(threshold: u32) -> u32 {
    // 处理特殊情况
    if threshold == 0 {
        return 0;
    }
    if threshold == 1 {
        return 1;
    }
    
    let mut i = 2; // 已经有2个元素
    let mut fib = vec![0, 1];
    let mut sum = 1; // 初始和为1（第二个斐波那契数）
    
    loop {
        // 计算下一个斐波那契数
        let next_fib = fib[i-1] + fib[i-2];
        
        // 如果超过阈值，退出循环
        if next_fib >= threshold {
            break;
        }
        
        // 将新的斐波那契数添加到序列中
        fib.push(next_fib);
        
        // 如果是奇数，加入总和
        if next_fib % 2 == 1 {
            sum += next_fib;
        }
        
        i += 1;
    }
    
    sum
}